package cn.com.nes.site.controller.agent.vo;

import cn.com.nes.site.entity.em.agent.grant.AgentGrantTypeEnum;
import cn.com.nes.site.entity.vo.BaseVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.NotEmpty;

import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;

@Data
@ApiModel("单个渠道授权保存-入参模型")
public class SingleAgentGrantSaveVO extends BaseVO {

    @ApiModelProperty(value = "授权ID", notes = "编辑时必填")
    private Long grantId;

    @NotNull(message = "代理关系ID")
    @ApiModelProperty(value = "代理关系ID", required = true)
    private Long agentRelationshipId;

    @NotNull(message = "授权类型")
    @ApiModelProperty(value = "授权类型", required = true)
    private AgentGrantTypeEnum grantType;

    @NotNull(message = "授权开始时间")
    @ApiModelProperty(value = "授权开始时间", required = true)
    private Date startTime;

    @NotNull(message = "授权终止时间")
    @ApiModelProperty(value = "授权终止时间", required = true)
    private Date endTime;

    @NotEmpty(message = "授权产品列表")
    @ApiModelProperty(value = "授权产品列表",required = true)
    private List<String> productUuidList;

    @NotEmpty(message = "授权区划列表")
    @ApiModelProperty(value = "授权区划列表", required = true)
    private List<String> regionCodeList;

}
